@Lemon
1年前 提问
1个回答

什么是 WebDAV 收缩溢出漏洞

齐士忠
1年前
官方采纳

WebDAV 收缩溢出漏洞是:

  • WebDAV压缩溢出出现的首要是IIS服务提供提供了对WebDAV的支持,WebDAV可以通过HTTP向用户提供远程文件存储的服务,但是该组件不能充分检查传递给部分系统组件的数据,这样的远程攻击者利用这个漏洞就可以对WebDAV进行攻击,从而获得LocalSystem权限,完全控制目标主机。

WebDAV 收缩溢出漏洞成因:

  • 通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,造成程序崩溃或使程序转而执行其它指令,以达到攻击的目的。造成缓冲区溢出的原因是程序中没有仔细检查用户输入的参数。例如下面程序: void function(char *str) { char buffer[16]; strcpy(buffer,str); } 上面的strcpy()将直接把str中的内容copy到buffer中。这样只要str的长度大于16,就会造成buffer的溢出,使程序运行出错。存在象strcpy这样的问题的标准函数还有strcat(),sprintf(),vsprintf(),gets(),scanf()等。 当然,随便往缓冲区中填东西造成它溢出一般只会出现“分段错误”(Segmentation fault),而不能达到攻击的目的。最常见的手段是通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其它命令。如果该程序属于root且有suid权限的话,攻击者就获得了一个有root权限的shell,可以对系统进行任意操作了。